home *** CD-ROM | disk | FTP | other *** search
/ Workbench Add-On / Workbench Add-On - Volume 1.iso / DiskUtil / Crunch / XPK / DOCS / SHRI.DOC < prev    next >
Text File  |  1995-01-25  |  6KB  |  165 lines

  1.  
  2.  
  3.                               xpkSHRI
  4.                              =========
  5.  
  6.                          xpkSHRI.library
  7.  
  8.                      Version 2.1 (25 Jan 1995)
  9.                  Copyright 1995 by Matthias Meixner
  10.  
  11.  
  12.  
  13.                          License/Disclaimer
  14.                          ------------------
  15.  
  16.     This library may be freely distributed with the XPK compression
  17. package, as long as it is kept in its original, complete, and unmodified
  18. form.  It may not be distributed in a commercial package of any kind without
  19. my written permission. You must not distribute the library without this
  20. documentation.
  21.  
  22.     You must not remove the copyright-information from the library or this
  23. document.
  24.  
  25.     This program is distributed in the hope that it will be useful, but
  26. WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
  27. or FITNESS FOR A PARTICULAR PURPOSE.
  28.  
  29.  
  30.                            Description
  31.                            -----------
  32.  
  33.     SHRI is an XPK packer sublibrary which implements a highly for
  34. compression rate optimized compressor, that uses offset/len encoding with
  35. adaptive arithmetic aftercoding for best compression results. Its
  36. compression rate is better than that of most other packers, e.g. lha,
  37. zoo or powerpacker.
  38.  
  39.     It supports 7 modes, which differ in the size of the dictionary:
  40.  
  41.    Modes   Dictionarysize
  42.    ------  --------------
  43.     0- 14     1k
  44.    15- 28     2k
  45.    29- 42     4k
  46.    43- 56     8k
  47.    57- 70    16k
  48.    71- 84    32k
  49.    85-100    64k
  50.  
  51. A larger dictionarysize gives a higher compression rate and faster
  52. decompression, but slows down the compression.
  53.  
  54. Here are some benchmarks to give you an impression of the compressionrate
  55. compared to other compression-libraries (BLZW,NUKE,RAKE 68020 V1.5)
  56. These tests were done on an A4000/040.
  57.  
  58.  
  59. Binary (assembler of SAS-C6.51):
  60.  
  61. Packer      UComp   Comp    CF     CTime    CSpd     UTime    USpd
  62. ------------------------------------------------------------------
  63. blzw       104540  67144 35.8%      0.63  163659      0.16  634266
  64.  
  65. nuke       104540  53672 48.7%      2.15   48562      0.08 1244520
  66.  
  67. rake       104540  52980 49.4%      0.75  138040      0.07 1341530
  68.  
  69. shri.0     104540  48404 53.7%      2.94   35484      1.57   66409
  70. shri.15    104540  47544 54.6%      2.97   35094      1.53   68291
  71. shri.29    104540  46652 55.4%      3.13   33343      1.50   69491
  72. shri.43    104540  46236 55.8%      3.40   30724      1.43   72610
  73. shri.57    104540  46080 56.0%      3.69   28311      1.42   73229
  74. shri.71    104540  45952 56.1%      4.11   25425      1.40   74198
  75. shri.85    104540  45732 56.3%      4.71   22182      1.40   74430
  76.  
  77.  
  78. English text:
  79.  
  80. Packer      UComp   Comp    CF     CTime    CSpd     UTime    USpd
  81. ------------------------------------------------------------------
  82. blzw       284397 140160 50.8%      1.39  204168      0.42  662889
  83.  
  84. nuke       284397 139540 51.0%     11.21   25349      0.26 1082039
  85.  
  86. rake       284397 131760 53.7%      3.85   73740      0.23 1195470
  87.  
  88. shri.0     284397 137008 51.9%      8.68   32757      4.72   60228
  89. shri.15    284397 131576 53.8%      8.30   34254      4.23   67146
  90. shri.29    284397 126456 55.6%      8.17   34799      3.76   75561
  91. shri.43    284397 121336 57.4%      8.52   33349      3.32   85499
  92. shri.57    284397 116380 59.1%      9.61   29578      2.96   95968
  93. shri.71    284397 112132 60.6%     11.90   23896      2.69  105528
  94. shri.85    284397 108028 62.1%     16.84   16886      2.52  112634
  95.  
  96.  
  97. C-sourcecode:
  98.  
  99. Packer      UComp   Comp    CF     CTime    CSpd     UTime    USpd
  100. ------------------------------------------------------------------
  101. blzw       102137  38400 62.5%      0.44  230525      0.14  709441
  102.  
  103. nuke       102137  28300 72.3%      1.66   61493      0.06 1655974
  104.  
  105. rake       102137  24916 75.7%      1.30   78178      0.05 1889131
  106.  
  107. shri.0     102137  30088 70.6%      2.01   50606      0.94  107935
  108. shri.15    102137  27228 73.4%      2.02   50511      0.83  122441
  109. shri.29    102137  25460 75.1%      2.19   46441      0.74  136683
  110. shri.43    102137  23984 76.6%      2.59   39410      0.68  149844
  111. shri.57    102137  22528 78.0%      3.31   30803      0.60  168234
  112. shri.71    102137  21360 79.1%      4.66   21906      0.55  183074
  113. shri.85    102137  20704 79.8%      5.94   17173      0.53  189540
  114.  
  115.  
  116. As you can see, this library is not meant to be used for online-compression
  117. as it is used in e.g. XFH. It is meant to be used for achieving highest
  118. compression-rates. These can be useful, when transferring files via
  119. modem, for a backup to a slow medium (floppy disks) when you have a fast
  120. computer or for creating archives with the xpkarchive.library.
  121.  
  122. The decompressionspeed of this version is about 82% higher than that of
  123. version 1.0. The compression is about 5% faster.
  124.  
  125.  
  126.  
  127.                             History
  128.                             -------
  129.  
  130. V0.2  First public Release
  131. V0.3  XpksPackChunk retured XPKERR_CORRUPT instead of XPKERR_EXPANSION
  132.       - Bug fixed in V0.3
  133. V0.4  SHRI could not decompress files, which where partly compressable
  134.       - Bug fixed in V0.4
  135. V1.0  New Version with improved compression- and decompressionspeed
  136. V2.1  Improved decompressionspeed, all relevant parts of the decompressor
  137.       are now written in assembler.
  138.  
  139.  
  140. Note: There was another version of SHRI floating around, which was not
  141.       released by me. Somebody had disassembled optimized and reassembled
  142.       my xpkSHRI.library. It was released as version 2.0 and my copyright
  143.       was removed from that file. Therefore once again:
  144.  
  145.          You must not remove my copyright-information from the library
  146.          or this documentation !
  147.  
  148.       (BTW: This version 2.0 produces a mungwall-hit: mismatched FreeMem )
  149.  
  150.       To keep the versionnumber growing, I had to release this version
  151.       as version 2.1, although it just improves decompressionspeed.
  152.  
  153.  
  154.  
  155.                         Contact Address
  156.                         ---------------
  157.  
  158.     Matthias Meixner
  159.     Sandberg 13
  160.     36145 Schwarzbach
  161.     Germany
  162.  
  163.     meixner@rbg.informatik.th-darmstadt.de
  164.  
  165.